package com.ehome.poct.core.dao.entity.check;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ehome.mybatisplus.autoconfigure.DO;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 试纸批次配置信息表
 */
@Data
@TableName(value = "test_conf_poct_strip_mapping")
public class TestConfPoctStripMappingDO extends DO<TestConfPoctStripMappingDO> {
    @TableId(value = "test_conf_poct_strip_mapping_id")
    private Long testConfPoctStripMappingId;

    /**
     * 检测试纸类型码
     */
    @TableField(value = "strip_type_code")
    private Integer stripTypeCode;

    /**
     * 试纸批次
     */
    @TableField(value = "strip_batch")
    private Integer stripBatch;

    /**
     * 试纸厂家代码
     */
    @TableField(value = "factory_code")
    private String factoryCode;

    /**
     * 此批次试纸类型的名称
     */
    @TableField(value = "strip_map_name")
    private String stripMapName;

    /**
     * 检测下限值
     */
    @TableField(value = "`min`")
    private BigDecimal min;

    /**
     * 检测上限值
     */
    @TableField(value = "`max`")
    private BigDecimal max;

    /**
     * 试纸的反应时间
     */
    @TableField(value = "reaction_time")
    private Integer reactionTime;

    /**
     * 质检数据关联ID（未来算法平台）
     */
    @TableField(value = "quality_id")
    private Long qualityId;

    /**
     * 质检状态 （0 没检测 ，5算法检验合格 10质检Ok可上线)
     */
    @TableField(value = "quality_status")
    private Boolean qualityStatus;

    /**
     * 质检结果（超玲会填写一些数据）
     */
    @TableField(value = "quality_result")
    private String qualityResult;
    /**
     * 试纸过期时间
     */
    @TableField(value = "effective_time")
    public LocalDateTime effectiveTime;
    /**
     * 告警提示
     */
    @TableField(value = "warning_tips")
    public String warningTips;

    @TableField(value = "is_delete")
    private Boolean isDelete;

    @TableField(value = "create_by", fill = FieldFill.INSERT)
    public Long createBy;
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    public LocalDateTime createTime;
    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    public Long updateBy;
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    public LocalDateTime updateTime;
}